The present invention relates to a technique for improving response performance in data transmission between a server and a storage device through a network and reducing overhead at the time of occurrence of a fault.
The mainstream of the connection form of a storage device (hereinafter also referred to as “storage”) changes from Direct Attached Storage (DAS) of a computer (hereinafter referred to as “server”) direct-coupling type to Storage Area Network (SAN) of a network coupling type. FC-SAN using a fibre channel is generally used as a transmission system for achieving SAN.
On the other hand, Ethernet (registered trademark) lagged behind the fibre channel in transmission performance is being improved with the advance of network technology so as to be applied to SAN. This is called IP-SAN to be-distinguished from FC-SAN. Although there are several candidates for means of achieving IP-SAN, iSCSI (Internet SCSI) is said to be a leading candidate.
In iSCSI based on Ethernet (registered trademark) low in reliability, TCP/IP protocol is used in order to ensure reliability on data transmission. There is however a problem that overhead for data transmission increases though the use of TCP/IP ensures reliability.
For example, TCP is of a connection type. A process of compensating the sequence of data transmitted through a TCP layer, a process of correcting error and a process of retransmitting data at the time of occurrence of a fault are carried out. Particularly, overhead due to the process of retransmitting data at the time of occurrence of a fault increases in proportion to the connection distance between the server and the storage and exerts influence on performance.
As means for solving the problem on the retransmission process in TCP, there has been proposed a method in which a device (hereinafter referred to as “cache device”) for temporarily storing (hereinafter referred to as “caching”) data is disposed between the server and the storage so that a request given from the server can be cached by the cache device. When a retransmission process occurs, data, etc. are retransmitted from the cache device, not from the server, so that the overhead can be reduced.
The idea of the aforementioned cache device is employed as “Web cache” in Web access technology. Specifically, in the Web, it is general that a page acquired from a server is temporarily cached by a local cache device.
If consideration is given to the fact that the page is updated in real time on the server side, it is necessary for this type Web cache to guarantee freshness of the page cached by the local cache device, i.e., coincidence of data in the page cached by the local cache device with data in the page managed by the server.
In a protocol HTTP (HyperText Transport Protocol) for achieving Web access, a method of locally judging, on the basis of information such as Age defined in a header of response packet to a request given to the Web server, whether data cached by the local cache device can be used or not, is used as means for guaranteeing the freshness. Incidentally, the data allowed to be cached locally are limited to data corresponding to read commands (for reading data from the server).
A data caching method used in a file system has been further disclosed in JP-A-11-24981 and JP-A-2001-290787.
In JP-A-11-24981, there has been disclosed a technique which is used in a system having a file server connected to a network, and clients connected to the network through a cache server (as a kind of cache device) and in which a file high in access frequency is prefetched on the cache server to achieve high-speed file access.
In JP-A-2001-290787, there has-been disclosed a technique which is used in a system having a server, cache servers and clients connected to one another through a network and in which data are distributed through only a cache server low in load on data distribution to a client as a data requester and little in delay of communication time to thereby prevent wasteful data from being accumulated on other cache servers.